package com.ruoyi.ctcx.mapper;

import com.ruoyi.ctcx.domain.TbInsuranceContract;
import com.ruoyi.ctcx.domain.ro.InsuranceParam;
import com.ruoyi.ctcx.domain.ro.InsuranceQueryParam;
import com.ruoyi.ctcx.domain.vo.TbInsuranceContractDetailVo;
import com.ruoyi.ctcx.domain.vo.TbInsuranceContractQueryVo;
import com.ruoyi.ctcx.domain.vo.TbInsuranceDetailVo;

import java.util.List;


/**
 * 保险合同主Mapper接口
 * 
 * @author ruoyi
 * @date 2024-11-19
 */
public interface TbInsuranceContractMapper 
{
    /**
     * 查询保险合同主
     * 
     * @param id 保险合同主主键
     * @return 保险合同主
     */
    public TbInsuranceContract selectTbInsuranceContractById(String id);

    /**
     * 查询保险合同主列表
     * 
     * @param tbInsuranceContract 保险合同主
     * @return 保险合同主集合
     */
    public List<TbInsuranceContract> selectTbInsuranceContractList(TbInsuranceContract tbInsuranceContract);

    /**
     * 新增保险合同主
     * 
     * @param tbInsuranceContract 保险合同主
     * @return 结果
     */
    public int insertTbInsuranceContract(TbInsuranceContract tbInsuranceContract);

    /**
     * 修改保险合同主
     * 
     * @param tbInsuranceContract 保险合同主
     * @return 结果
     */
    public int updateTbInsuranceContract(TbInsuranceContract tbInsuranceContract);

    /**
     * 删除保险合同主
     * 
     * @param id 保险合同主主键
     * @return 结果
     */
    public int deleteTbInsuranceContractById(String id);

    /**
     * 批量删除保险合同主
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTbInsuranceContractByIds(String[] ids);

    List<TbInsuranceContractQueryVo> getContractList(InsuranceParam insuranceParam);

    TbInsuranceContractDetailVo selectTbInsuranceContractByInsureId(InsuranceQueryParam insuranceQueryParam);
}
